Anycast is an internet addressing protocol where multiple hosts share thesame IP-address. A popular architecture for modern Content DistributionNetworks (CDNs) for geo-replicated services consists of multiple layers ofproxy nodes for service and co-located DNS-servers for load-balancing amongdifferent proxies. Both the proxies and the DNS-servers use anycast addressing,which offers simplicity of design and high availability of service at the costof partial loss of routing control. Due to the very nature of anycast,redirection actions by a DNS-server also affects loads at nearby proxies in thenetwork. This makes the problem of optimal distributed load management highlychallenging. In this paper, we propose and evaluate an analytical framework toformulate and solve the load-management problem in this context. We considertwo distinct algorithms. In the first half of the paper, we pose theload-management problem as a convex optimization problem. Following aKelly-type dual decomposition technique, we propose a fully-distributedload-management algorithm by introducing FastControl packets. This algorithmutilizes the underlying anycast mechanism itself to enable effectivecoordination among the nodes, thus obviating the need for any external controlchannel. In the second half of the paper, we consider an alternative greedyload-management heuristic, currently in production in a major commercial CDN.We study its dynamical characteristics and analytically identify itsoperational and stability properties. Finally, we critically evaluate both thealgorithms and explore their optimality-vs-complexity trade-off usingtrace-driven simulations.
展开▼